// =================
// TYPOGRAPHY
// =================

$body-font: 'Oswald',
sans-serif;

// =================
// COLORS
// =================

$height: 125px;
$width: 85px;

$black: #22292f;
$brown: #640303;
$board-hover: #dae1e7;
$board: #f8fafc;
$dark-purple: #5661b3;
$light-blue: #6cb2eb;
$purple: #9561e2;
$orange: #f6993f;
$red: #e3342f;
$yellow: #f2d024;
$green: #38c172;
$dark-blue: #2779bd;

// =================
// GLOBAL
// =================

* {
  box-sizing: border-box;
}

.text-brown {
  color: $brown;
}

.bg-brown {
  background-color: $brown;
}

body {
  margin: 0;
  font-family: $body-font;
  font-weight: 400;
  font-size: 0.6em;
  color: $black;
  text-transform: uppercase;
}

// h1,
// h2,
// h3,
// h4,
// h5,
// h6 {
//   margin: 0;
// }

// Property colors
.swal-text-no-padding {
  font-size: 16px;
  position: relative;
  float: none;
  line-height: normal;
  vertical-align: top;
  text-align: left;
  display: inline-block;
  margin: 0;
  padding: 0 10px;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.64);
  max-width: calc(100% - 20px);
  overflow-wrap: break-word;
  box-sizing: border-box;
}

.swal-footer {
  display: flex;
  justify-content: space-around;
  margin-bottom: 10px;
}

.swal-button {
  padding: 0.7em 2em;
  font-size: 1.125rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.swal-button--buy,
.swal-button--confirm {
  background-color: #bcdefa;
  color: #2779bd;
}

.swal-content__input {
  font-size: 1.125rem;
}

.dark-purple {
  background: $dark-purple;
}

.light-blue {
  background: $light-blue;
}

.purple {
  background: $purple;
}

.orange {
  background: $orange;
}

.red {
  background: $red;
}

.yellow {
  background: $yellow;
}

.green {
  background: $green;
}

.dark-blue {
  background: $dark-blue;
}

// =================
// LAYOUT
// =================

// Table and board
// .table {
//   width: auto !important;
//   height: auto;
//   margin-top: 1em;
//   //background-image: linear-gradient(120deg, #a1c4fd 0%, #c2e9fb 100%);
// }
.board {
  display: grid;
  grid-template-columns: $height repeat(9, $width) $height;
  grid-template-rows: $height repeat(9, $width) $height;
  grid-gap: 2px;
  // width: calc($height + 9 * $width + $height + 11 * 2px + 2px);
  // box-shadow: 0 15px 30px 0 rgba(0, 0, 0, 0.11),
  //   0 5px 15px 0 rgba(0, 0, 0, 0.08);
  // height: auto;
  // background: $black;
  // border: 2px solid $black;
}

.drag-none {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
}

.center {
  grid-column: 2 / 11;
  grid-row: 2 / 11;
  // background: $board;
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  grid-template-rows: repeat(7, 1fr);
  // justify-items: center;
  // align-items: center;
}

.title {
  grid-column: 1 / 9;
  grid-row: 4;
  font-size: 90px;
  font-weight: 400;
  letter-spacing: 12px;
}

.community-chest-deck {
  grid-column: 2 / 4;
  grid-row: 2 / 4;
  transform: rotate(135deg);
  margin-bottom: 60px;
  margin-right: 60px;
}

.chance-deck {
  grid-column: 5 / 7;
  grid-row: 5 / 7;
  transform: rotate(315deg);
  margin-top: 60px;
  margin-left: 60px;
}

.label {
  font-weight: 500;
  letter-spacing: 3px;
  // padding-bottom: 10px;
}

.deck {
  // border: 2px dashed $black;
  width: 160px;
  height: 120px;
}

// Rows of spaces

.row {
  display: grid;
  grid-gap: 2px;
}

.horizontal-row {
  grid-template-columns: repeat(9, $width);
  grid-template-rows: $height;
}

.vertical-row {
  grid-template-columns: $height;
  grid-template-rows: repeat(9, $width);

  .container {
    top: 50%;
    left: 50%;
  }
}

.bottom-row {
  grid-column: 2 / 11;
  grid-row: 11;
}

.left-row {
  grid-column: 1;
  grid-row: 2 / 11;

  .container {
    transform: translate(-50%, -50%) rotate(90deg);
  }
}

.top-row {
  grid-column: 2 / 11;
  grid-row: 1;

  .container {
    transform: rotate(180deg);
  }
}

.right-row {
  grid-column: 11;
  grid-row: 2 / 11;

  .container {
    transform: translate(-50%, -50%) rotate(270deg);
  }
}

// =================
// SPACES
// =================

// Types of spaces

.space {
  background: $board;
  text-align: center;

  &:hover {
    background: $board-hover;
    cursor: pointer;
  }

  &.active {
    background: $board-hover;
  }

  .container {
    display: flex; // flex flex-col justify-between relative
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    transform-origin: center;
    height: $height;
    width: $width;
  }

  .name,
  .instructions {
    letter-spacing: 0.05em; // tracking-wide
    padding-left: 15px;
    padding-right: 15px;
  }

  .price {
    letter-spacing: 0.05em; // tracking-wide
    font-size: 1em;
    font-weight: 400;
    padding-bottom: 5px;
  }
}

.corner {
  .container {
    justify-content: space-around; // justify-around
    height: 100%;
    width: 100%;
  }

  .name {
    padding: 0;
  }
}

.property {
  .color-bar {
    height: 25px;
    border-bottom: 2px solid $black; // border-b-2 border-black
  }

  .name {
    padding-bottom: 50px;
  }
}

.railroad {
  .name {
    padding-top: 10px;
  }

  .drawing {
    font-size: 60px;
    color: $black; // text-black
  }
}

.utility {
  .name {
    padding-top: 10px;
  }

  .drawing {
    font-size: 70px;
  }
}

.fee {
  .name {
    padding-top: 10px;
    font-size: 14px;
  }

  .instructions {
    font-size: 10px;
  }
}

// Specific spaces

.go {
  grid-column: 11;
  grid-row: 11 / 12;

  .container {
    justify-content: flex-start;
    transform: rotate(315deg);
  }

  .instructions {
    padding: 0 30px;
  }

  .go-word {
    font-size: 55px;
    color: $red;
  }

  .arrow {
    font-size: 45px;
    color: $red;
    position: absolute;
    bottom: -10px;
    left: 5px;
  }
}

.jail {
  grid-column: 1;
  grid-row: 11 / 12;
  display: grid;
  grid-template-columns: repeat(10, 12.5px);
  grid-template-rows: repeat(10, 12.5px);
  justify-content: center;
  align-items: center;

  .drawing {
    grid-column: 4 / 11;
    grid-row: 1 / 8;
    width: 87.5px;
    height: 87.5px;
    background: $orange;
    border-bottom: 2px solid $black;
    border-left: 2px solid $black;
  }

  .just {
    grid-column: 3;
    grid-row: 4;
    transform: rotate(90deg);
    padding-top: 5px;
  }

  .visiting {
    grid-column: 6;
    grid-row: 8;
    padding-top: 5px;
  }

  .container {
    align-items: center;
    transform: rotate(45deg);
  }

  .name {
    font-size: 14px;
  }

  .window {
    display: flex;
    justify-content: space-around;
    align-items: center;
    position: relative;
    width: 55px;
    height: 55px;
    background: $board;
    border: 2px solid $black;
  }

  .person {
    position: absolute;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    font-size: 40px;
  }

  .bar {
    height: 55px;
    width: 2px;
    background: $black;
  }
}

.free-parking {
  grid-column: 1;
  grid-row: 1 / 2;

  .container {
    justify-content: center;
    transform: rotate(135deg);
  }

  .name {
    font-size: 16px;
  }

  .drawing {
    font-size: 60px;
    color: $red;
    padding-top: 5px;
    padding-bottom: 5px;
  }
}

.go-to-jail {
  grid-column: 11;
  grid-row: 1 / 1;

  .container {
    justify-content: center;
    transform: rotate(225deg);
  }

  .name {
    font-size: 16px;
  }

  .drawing {
    font-size: 60px;
    color: $brown;
    padding-top: 5px;
    padding-bottom: 5px;
  }
}

.chance {
  .container {
    justify-content: center;
  }

  .drawing {
    font-size: 70px;
    margin-top: 10px;
    color: $red;
  }

  .blue {
    color: $dark-blue;
  }
}

.community-chest {
  .container {
    justify-content: space-around;
  }

  .drawing {
    font-size: 50px;
    color: $light-blue;
  }

  .instructions {
    font-size: 8px;
  }
}

.electric-company {
  .drawing {
    color: $yellow;
  }
}

.waterworks {
  .drawing {
    color: $dark-blue;
  }
}

.income-tax {
  .container {
    justify-content: center;
    align-items: center;
  }

  .name {
    padding-bottom: 5px;
  }

  .diamond {
    width: 5px;
    height: 5px;
    background: $black;
    transform: rotate(45deg);
    display: inline-block;
  }

  .instructions {
    padding-top: 5px;
    padding-bottom: 5px;
  }
}

.luxury-tax {
  .drawing {
    font-size: 50px;
  }

  .instructions {
    padding-bottom: 5px;
  }
}

// =================
// UTILITY
// =================

// .long-name {
//   padding-left: 0 !important;
//   padding-right: 0 !important;
// }